Skip to content

Conversation

smpanaro
Copy link

This propagates the project when populating the cache.

For a config like this:

projects:
  public:
    schema:
      - ./public/schema.graphql
      - ./shared.graphql
    documents: ./public/documents.graphql
  private:
    schema:
      - ./private/schema.graphql
      - ./shared.graphql
    documents: ./private/documents.graphql

If shared.graphql contains a type used in both ./public/documents.graphql and ./private/documents.graphql, the cache will only be populated for the first project (public here). This causes features like "go to definition" to only work for that project.

Propagating the project adds the shared types to the cache for both projects, and makes "go to definition" work for both.

Example Project
$ tree -a
.
├── .graphqlrc.yml
├── private
│   ├── documents.graphql
│   └── schema.graphql
├── public
│   ├── documents.graphql
│   └── schema.graphql
└── shared.graphql

3 directories, 6 files
# shared.graphql
type Book {
    title: String
}
# private/documents.graphql
query ListBooks {
    books {
        title # << go to definition on this fails on master
    }
}
# private/schema.graphql
type Query {
    books: [Book]
}

schema {
    query: Query
}
# public/documents.graphql
query ListPublicBooks {
    publicBooks {
        title
    }
}
# public/schema.graphql
type Query {
    publicBooks: [Book]
}

schema {
    query: Query
}

Copy link

changeset-bot bot commented Sep 20, 2025

⚠️ No Changeset found

Latest commit: 281a489

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

Copy link

linux-foundation-easycla bot commented Sep 20, 2025

CLA Signed

  • ✅login: smpanaro / name: Stephen Panaro / (281a489)

The committers listed above are authorized under a signed CLA.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant